home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / Libraries / WASTE 1.2 / Minimal IC APIs / ICKeys.h < prev    next >
Text File  |  1996-05-19  |  7KB  |  189 lines

  1. /*
  2.     The canonical Internet Config interface is defined in Pascal.  These headers have
  3.     not been thoroughly tested.  If there is a conflict between these headers and the
  4.     Pascal interfaces, the Pascal should take precedence.
  5. */
  6.  
  7. /* ///////////////////////////////////////////////////////////////////////////////// */
  8.  
  9. #ifndef __ICKEYS__
  10. #define __ICKEYS__
  11.  
  12. #ifndef __TYPES__
  13. #include <Types.h>
  14. #endif
  15.  
  16. #ifndef __ALIASES__
  17. #include <Aliases.h>
  18. #endif
  19.  
  20. /* ///////////////////////////////////////////////////////////////////////////////// */
  21.  
  22. /* •••Start ICKeys.h••• */
  23.  
  24. #define kICRealName "\pRealName"    /* PString */
  25. #define kICEmail "\pEmail"    /* PString -- user@host.domain */
  26. #define kICMailAccount "\pMailAccount"    /* PString -- user@host.domain */
  27. #define kICMailPassword "\pMailPassword"    /* PString -- scrambled */
  28. #define kICNewsAuthUsername "\pNewsAuthUsername"    /* PString */
  29. #define kICNewsAuthPassword "\pNewsAuthPassword"    /* PString -- scrambled */
  30. #define kICArchiePreferred "\pArchiePreferred"    /* PString -- formatted */
  31. #define kICArchieAll "\pArchieAll"    /* STR# -- formatted */
  32. #define kICUMichPreferred "\pUMichPreferred"    /* PString -- formatted */
  33. #define kICUMichAll "\pUMichAll"    /* STR# -- formatted */
  34. #define kICInfoMacPreferred "\pInfoMacPreferred"    /* PString -- formatted */
  35. #define kICInfoMacAll "\pInfoMacAll"    /* STR# -- formatted */
  36. #define kICPhHost "\pPhHost"    /* PString -- host.domain */
  37. #define kICWhoisHost "\pWhoisHost"    /* PString -- host.domain */
  38. #define kICFingerHost "\pFingerHost"    /* PString -- host.domain */
  39. #define kICFTPHost "\pFTPHost"    /* PString -- host.domain */
  40. #define kICTelnetHost "\pTelnetHost"    /* PString -- host.domain */
  41. #define kICSMTPHost "\pSMTPHost"    /* PString -- host.domain */
  42. #define kICNNTPHost "\pNNTPHost"    /* PString -- host.domain */
  43. #define kICGopherHost "\pGopherHost"    /* PString -- host.domain */
  44. #define kICLDAPServer "\pLDAPServer"    /* PString -- host.domain */
  45. #define kICLDAPSearchbase "\pLDAPSearchbase"    /* PString -- string LDAP thing */
  46. #define kICWWWHomePage "\pWWWHomePage"    /* PString -- URL */
  47. #define kICWAISGateway "\pWAISGateway"    /* PString -- no idea */
  48. #define kICListFont "\pListFont"    /* ICFontRecord */
  49. #define kICScreenFont "\pScreenFont"    /* ICFontRecord */
  50. #define kICPrinterFont "\pPrinterFont"    /* ICFontRecord */
  51. #define kICTextCreator "\pTextCreator"    /* ICAppSpec */
  52. #define kICBinaryTypeCreator "\pBinaryTypeCreator"    /* ICFileInfo */
  53. #define kICDownloadFolder "\pDownloadFolder"    /* ICFileSpec */
  54. #define kICSignature "\pSignature"    /* TEXT */
  55. #define kICOrganization "\pOrganization"    /* PString */
  56. #define kICPlan "\pPlan"    /* TEXT */
  57. #define kICQuotingString "\pQuotingString"    /* PString */
  58. #define kICMailHeaders "\pMailHeaders"    /* TEXT */
  59. #define kICNewsHeaders "\pNewsHeaders"    /* TEXT */
  60. #define kICMapping "\pMapping"    /* ICMapEntries */
  61. #define kICCharacterSet "\pCharacterSet"    /* ICCharTable */
  62. #define kICHelper "\pHelper•"    /* ICAppSpec */
  63. #define kICServices "\pServices"    /* ICServices */
  64. #define kICNewMailFlashIcon "\pNewMailFlashIcon"    /* Boolean */
  65. #define kICNewMailDialog "\pNewMailDialog"    /* Boolean */
  66. #define kICNewMailPlaySound "\pNewMailPlaySound"    /* Boolean */
  67. #define kICNewMailSoundName "\pNewMailSoundName"    /* PString */
  68. #define kICWebBackgroundColour "\pWebBackgroundColour"    /* RGBColor */
  69. #define kICNoProxyDomains "\pNoProxyDomains"    /* STR# -- list of domains */
  70. #define kICUseSocks "\pUseSocks"    /* Boolean */
  71. #define kICSocksHost "\pSocksHost"    /* PString -- host.domain */
  72. #define kICUseHTTPProxy "\pUseHTTPProxy"    /* Boolean */
  73. #define kICHTTPProxyHost "\pHTTPProxyHost"    /* PString -- host.domain */
  74. #define kICUseFTPProxy "\pUseFTPProxy"    /* Boolean */
  75. #define kICFTPProxyHost "\pFTPProxyHost"    /* PString -- host.domain */
  76. #define kICFTPProxyUser "\pFTPProxyUser"    /* PString */
  77. #define kICFTPProxyPassword "\pFTPProxyPassword"    /* PString -- scrambled */
  78. #define kICFTPProxyAccount "\pFTPProxyAccount"    /* PString */
  79.  
  80. /* •••End ICKeys.h••• */
  81.  
  82. #if defined(powerc) || defined (__powerc)
  83. #pragma options align=mac68k
  84. #endif
  85.  
  86. struct ICFontRecord {
  87.     short size;
  88.     Style face;
  89.     char pad;
  90.     Str255 font;
  91. };
  92. typedef struct ICFontRecord ICFontRecord, *ICFontRecordPtr, **ICFontRecordHandle;
  93.  
  94. struct ICCharTable {
  95.     unsigned char net_to_mac[256];
  96.     unsigned char mac_to_net[256];
  97. };
  98. typedef struct ICCharTable ICCharTable, *ICCharTablePtr, **ICCharTableHandle;
  99.  
  100. struct ICAppSpec {
  101.     OSType fCreator;
  102.     Str63 name;
  103. };
  104. typedef struct ICAppSpec ICAppSpec, *ICAppSpecPtr, **ICAppSpecHandle;
  105.  
  106. struct ICFileInfo {
  107.     OSType fType;
  108.     OSType fCreator;
  109.     Str63 name;
  110. };
  111. typedef struct ICFileInfo ICFileInfo, *ICFileInfoPtr, **ICFileInfoHandle;
  112.  
  113. struct ICFileSpec {
  114.     Str31 vol_name;
  115.     long vol_creation_date;
  116.     FSSpec fss;
  117.     AliasRecord alias;
  118.     /* plus extra data, aliasSize 0 means no alias manager present when
  119.             ICFileSpecification was created */
  120. };
  121. typedef struct ICFileSpec ICFileSpec, *ICFileSpecPtr, **ICFileSpecHandle;
  122.  
  123. enum {
  124.     ICfile_spec_header_size = sizeof(ICFileSpec) - sizeof(AliasRecord)
  125. };
  126.  
  127. struct ICMapEntry {
  128.     short total_length;
  129.     short fixed_length;
  130.     short version;
  131.     OSType file_type;
  132.     OSType file_creator;
  133.     OSType post_creator;
  134.     long flags;
  135.     /* variable part starts here */
  136.     Str255 extension;
  137.     Str255 creator_app_name;
  138.     Str255 post_app_name;
  139.     Str255 MIME_type;
  140.     Str255 entry_name;
  141. };
  142. typedef struct ICMapEntry ICMapEntry, *ICMapEntryPtr, **ICMapEntryHandle;
  143.  
  144. enum {
  145.     ICmap_binary_bit = 0,                        /* file should be transfered in binary as opposed to text mode */
  146.     ICmap_binary_mask = 0x00000001,
  147.     ICmap_resource_fork_bit = 1,        /* the resource fork of the file is significant */
  148.     ICmap_resource_fork_mask = 0x00000002,
  149.     ICmap_data_fork_bit = 2,                /* the data fork of the file is significant */
  150.     ICmap_data_fork_mask = 0x00000004,
  151.  
  152.     ICmap_post_bit = 3,                            /* post process using post fields */
  153.     ICmap_post_mask = 0x00000008,
  154.  
  155.     ICmap_not_incoming_bit = 4,            /* ignore this mapping for incoming files */
  156.     ICmap_not_incoming_mask = 0x00000010,
  157.     ICmap_not_outgoing_bit = 5,            /* ignore this mapping for outgoing files */
  158.     ICmap_not_outgoing_mask = 0x00000020,
  159.  
  160.     ICmap_fixed_length = 22                    /* number in fixed_length field */
  161. };
  162.  
  163. struct ICServiceEntry {
  164.     Str255 name;
  165.     short port;
  166.     short flags;
  167. };
  168. typedef struct ICServiceEntry ICServiceEntry, *ICServiceEntryPtr, **ICServiceEntryHandle;
  169.  
  170. struct ICServices {
  171.     short count;
  172.     ICServiceEntry services[1];
  173. };
  174. typedef struct ICServices ICServices, *ICServicesPtr, **ICServicesHandle;
  175.  
  176. enum {
  177.     ICservices_tcp_bit = 0,
  178.     ICservices_tcp_mask = 0x00000001,
  179.     ICservices_udp_bit = 1,
  180.     ICservices_udp_mask = 0x00000002
  181.     /* both bits can be set, which means the service is both TCP and UDP, eg daytime */
  182. };
  183.  
  184. #if defined(powerc) || defined(__powerc)
  185. #pragma options align=reset
  186. #endif
  187.  
  188. #endif
  189.